﻿using Domain.MainModule.Entities;

namespace Application.MainModule.StatesManagement
{
    public interface IStateManagementService
    {
        /// <summary>
        /// Add a state.
        /// </summary>
        /// <param name="state">State to be added.</param>
        void AddState(State state);

        /// <summary>
        /// Change a specific state.
        /// </summary>
        /// <param name="state">State changed.</param>
        void ChangeState(State state);

        /// <summary>
        /// Find a state by name.
        /// </summary>
        /// <param name="stateName">State name.</param>
        /// <returns>A State.</returns>
        State FindStateByName(string stateName);
    }
}
